package com.caigou.service;

import com.caigou.bean.cms.entity.SurveyCatalogConfig;
import com.caigou.bean.cms.entity.SurveyOperationLog;
import com.caigou.bean.cms.param.FrontSurveyParam;
import com.caigou.bean.cms.param.SurveyCatalogParam;
import com.caigou.bean.exam.entity.Users;
import com.caigou.util.Result;

import javax.servlet.http.HttpServletRequest;

public interface SurveyCatalogService {
    Result loadSurveyCatalogConfigList(SurveyCatalogParam param);

    Result updateSurveyCatalogConfigStatus(SurveyCatalogParam param, Users users);

    Result deleteSurveyCatalogConfig(SurveyCatalogParam param, Users users);

    Result saveSurveyCatalogConfig(SurveyCatalogParam param, Users users);

    Result loadSurveyCatalogConfigData(SurveyCatalogParam param);

    Result updateSurveyCatalogConfigData(SurveyCatalogParam param, Users users);

    Result loadSurveyRecycledList(SurveyCatalogParam param);

    Result deleteSurveyCatalogConfigData(SurveyCatalogParam param);

    Result loadSurveyHistoryList(SurveyCatalogParam param);

    Result cleanSurveyCatalogRecycled(SurveyCatalogParam param);

    Result updateRecoverCatalogConfig(SurveyCatalogParam param);

    Result loadSurveyCatalogData(FrontSurveyParam param, HttpServletRequest request);

    Result verifySurveyForm(FrontSurveyParam param, HttpServletRequest request);

    Result verifySurveyFormNeedLogin(FrontSurveyParam param);

    Result verifySurveyFormCode(FrontSurveyParam param, HttpServletRequest request);

    Result loadSurveyCatalogStatistics(SurveyCatalogParam param);

    int saveSurveyOperationLog(SurveyOperationLog operationLog);

    SurveyCatalogConfig loadSurveyCatalogConfig(String catalogId);
}
